// #include<vector>
// #include<limits>
// #include<cstddef>
// #include<iostream>
// #include<sstream>
// using namespace std;

// class NNSix{
// public:
//     bool IsRuiYear(int y){
//         return ((y % 400)  == 0)  || ((y % 100) != 0 && (y %4) == 0);
//     }
//     int YearDay(int y){
//         if(IsRuiYear(y)) return 366;
//         return 365;
//     }
//     int MonDay(int y, int m){
//         if(m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12){
//             return 31;
//         }
//         if(m == 2){
//             if(IsRuiYear(y)) return 29;
//             return 28;
//         }
//         return 30;
//     }

//     vector<int> XiaoMing(string date){
//         std::stringstream iss(date);
//         std::vector<string> allTok;
//         std::string token;
//         while(std::getline(iss, token, ' ')){
//             allTok.push_back(token);
//         }
//         // std::vector<string> results(std::istream_iterator<string>(iss), std::istream_iterator<std::string>());
//         auto y = std::stoi(allTok[0]);
//         auto m = std::stoi(allTok[1]);
//         auto d = std::stoi(allTok[2]);
//         // std::cout << y << ":" << m <<":" << d << endl;
//         auto startY = 2000;
//         auto startM = 1;
//         auto startD = 1;

//         auto totalD = 0;
//         if(y > startY){
//             auto passY = y-startY;
//             auto rY = passY;
//             auto rd = rY/4;
//             auto rm = rY/100;
//             auto add = rY/400;
//             auto allR = rd-rm+add;
//             auto pYear = passY-allR-1;
//             auto rYear = allR+1;
//             auto rday = rYear * 366;
//             auto pDay = pYear * 365;
//             totalD += rday;
//             totalD += pDay;
//         }
        
//         for(auto i = 1; i < m; i++){
//             totalD += MonDay(y, i);
//         }
//         totalD += d;
//         totalD--;//相差天数
//         // std::cout << totalD << endl;
//         // return std::make_tuple(totalD/4+1, totalD%4+1);
//         return vector<int>{totalD/4+1, totalD%4+1};
//     }
    
// };

// int main(int, char**) {
//     while(true){
//         string date;
//         if(!getline(std::cin, date)) break;
//         NNSix nns;
//         // auto tp = nns.XiaoMing("2000 2 1");
//         auto tp = nns.XiaoMing(date);
//         // std::cout << std::get<0>(tp) << " " << std::get<1>(tp) << endl;
//         std::cout <<tp[0] <<" " << tp[1] << endl;
//     }
// }